package fatworm.query.expression;

import fatworm.query.Plan;
import fatworm.query.Scan;
import fatworm.query.constant.Constant;
import fatworm.storage.table.*;

public interface Expression {
	
	public boolean isConstant();
	public boolean isFieldName();
	public boolean isOp();
	public boolean isSubquery();
	public Constant asConstant();
	public String asFieldName();
	public Plan asSubquery();
	public Constant evaluate(Scan s);
	public boolean isIn(Schema sch);
	
}